5. The Beginning of Software Engineering
Until the 1960s, hardware was the main focus of computer engineering. Computers and peripheral devices were large machines that filled big rooms, they were costly and required manpower to operate. Unlike today, software back then was not a separate field of engineering or science.
"Installation done!"
"Now, how do I program it?"
Mathematicians were involved in the invention of early computers so it was easy for students majoring in mathematics to approach computer programming in the early days.
"This new computer should give us the results in no time."
People who majored in science or engineering learned programming because they could do mathematical calculations and various experiments with computers that were previously done manually. Some of them fell in love with programming and changed their jobs as programmers.
"Isn't it more fun than math?"
Dennis Ritchie, who helped create Unix and the C programming language, studied physics and applied mathematics at university.
According to the story of Margaret Hamilton, who participated in the Apollo 11 mission in the 1960s and developed the lunar lander software, software development was not taken seriously as engineering and was not even considered a science.
After studying mathematics in university, she began working as a programmer at MIT to support her husband’s Ph.D. At that time, without any proper software development training, she joined in the development of a program to predict the weather.
"Computer science and software engineering weren't regular subjects yet. Programmers learned by doing."
Following this, she became a system programming expert and participated in the Apollo 11 mission. At the time, the Apollo 11 mission did not include any budget and schedule for software development, and there was no mention of software in the requirements[1]. However, software was important enough to control the flight of the spacecraft and the lunar lander. Margaret took her daughter to the office on weekends to develop more reliable software.
"Mom, when are we going home?"
"I'm done. Let's go."
By the late 1960s, the Apollo guidance and software effort had grown to hundreds of people, often summarized as roughly 400 contributors[1]. In 1969, Apollo 11 successfully landed on the Moon.
"Moon landing success!"
Hamilton argued that software should have the same professional standing as other engineering disciplines and helped popularize the term "software engineering." Sources differ on whether she coined the term, but she helped establish the concept[4].
"Software Engineering!"
An interesting fact is that many software developers were women until the 1960s, but this is a significant difference compared to the current situation where men dominate the computer programming field. The reason is that at the time, software development was less important than hardware development, so women were mainly in charge, and they were also paid less than men[2]. If you look for black and white photos of early computers on the Internet, you can see a lot of women in front of the computers.
"The salary is too low for what I'm doing."
All the people who did the programming by connecting the functional unit boards at ENIAC were women[3].
Grace Hopper held a doctorate in mathematics and became a pioneering programmer who later developed one of the earliest compilers. In 1947, she was working with the Harvard Mark II team when the machine began malfunctioning.
"Why isn't the input working?"
The team found a moth trapped in one of the machine's relays.
"There's a dead moth inside the relay."
They taped the moth into the logbook with the note "First actual case of bug being found." Engineers had used the word "bug" for technical faults long before this incident, but Hopper and the Mark II team helped popularize "bug" and "debugging" in computing[5].
"First actual case of bug being found."
Women played a pioneering role in early programming and helped lay the foundations of software engineering.
References
- Her Code Got Humans on the Moon—And Invented Software Itself, wired.com
- Computer Programming Used To Be Women’s Work, Smithsonian Magazine
- How Female ENIAC Programmers Pioneered the Software Industry, Intel iQ
- Margaret Hamilton's Apollo Code, NASA
- Log Book With Computer Bug, Smithsonian National Museum of American History